package com.young.shop.api.dao;

import com.young.shop.pojo.entity.Coupon;
import com.young.shop.pojo.qo.CouponQO;
import org.apache.ibatis.annotations.Param;
import org.springframework.web.bind.annotation.ResponseBody;

import java.math.BigDecimal;
import java.util.List;


@ResponseBody
public interface CouponMapper {
    /**
     * 查询商城全部的优惠券信息
     * @return
     */
    List<Coupon> selectCoupon();

    /**
     * 根据用户id查询用户领取的优惠券
     * @param userId
     * @param code
     * @return
     */
    CouponQO selectOneCoupon(@Param("userId") int userId, @Param("code") String code);

    /**
     * 领取优惠券
     * @param userId
     * @param couponNumber
     * @param couponCode
     * @return
     */
    int insertUserCoupon(@Param("userId") int userId, @Param("couponNumber") int couponNumber, @Param("couponCode") String couponCode);

    /**
     * 查询用户优惠券
     * @param userId
     * @return
     */
    List<CouponQO> selectPersonCoupon(@Param("userId") int userId);

    /**
     *
     * @param userId
     * @param orderPrice
     * @return
     */
    List<CouponQO> selectPayCoupon(@Param("userId") Integer userId, @Param("minPoint") BigDecimal orderPrice);
}
